package com.huitone.gddw.dao.worktable.paramconfigmanage;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.huitone.gddw.dao.entity.VirtualGateLink;
import com.huitone.gddw.service.dto.VirtualGateLinkDTO;

public interface IVirtualGateLinkDao {
	
	/**
	 * 新增虚拟通道记录
	 * @param entity
	 * @return
	 */
	int insertSelective(VirtualGateLink entity);
	
	/**
	 * 根据通道Id删除
	 * @param gateLinkId
	 * @return
	 */
	int deleteByGateLinkId(String gateLinkId);
	
	/**
	 * 根据主键修改
	 * @param recId
	 * @return
	 */
	int updateByPrimaryKeySelective(VirtualGateLink entity);
	
	/**
     * 页面列表查询
     * @param map
     * @return List<BlackUse> 
     */
    List<VirtualGateLinkDTO> selectPage(Map<String,Object> map);
    /**
     * 查询总记录数
     * @param map
     * @return
     */
    int selectCount(Map<String,Object> map);
    
    /**
     * 根据主键查询
     * @param recId
     * @return
     */
    VirtualGateLink selectByPrimaryKey(String recId);

    /**
     * 获取虚拟通道记录中不重复的通道id
     * @param map
     * @return
     */
    List<String> getGateLinkId(Map<String,Object> map);
    
    int selectCountByGateLinkId(Map<String,Object> map);
    
    /**
     * 根据通道id获得对应的虚拟通道
     * @param gateLinkId
     * @return
     */
    List<VirtualGateLinkDTO> selectByGateLinkId(@Param(value="gateLinkId") String gateLinkId);
    
}
